Recalling crop-specific performance targets for controlling a mobile machine

ABSTRACT

Machine sensor inputs are received, and a set of performance metrics are calculated based upon the sensor inputs. The set of performance metrics are stored as a performance target along with one or more additional performance targets. One of the performance targets is retrieved and the machine automatically generates an action signal indicative of machine setting adjustments that can be made in order to control operation of the machine to more closely conform to the retrieved performance target.

RELATED APPLICATION

The present application makes reference to related application U.S.patent application Ser. No. 14/495,734, filed on Sep. 24, 2016, entitled“AUTOMATIC TUNING OF AN INTELLIGENT COMBINE”, and assigned to the sameassignee as the present application, and the content of which is fullyincorporated herein by reference.

FIELD OF THE DISCLOSURE

The present disclosure relates to mobile equipment. More specifically,the present disclosure relates to recalling performance targets for usein controlling mobile machines.

BACKGROUND

There are a wide variety of different types of mobile machines, such asconstruction equipment, turf and forestry equipment, agriculturalequipment, etc. They can be very complex and difficult to operate. Forexample, an operator of a combine may require years of experience andyears of training before he or she can achieve relatively highperformance in operating the combine.

While some pieces of mobile equipment have a variety of differentsensors and control systems, they often rely on operator perception andmanual control inputs. As part of such control systems, sensors providesensor signals that are fed back to a main control computer. The maincontrol computer can generate various displays that are indicative ofthe sensed variables.

When operating a mobile machine, such as a combine, an operator normallyconfigures the machine according to a group of machine settings. Forinstance, the operator may configure the machine to have a certain fanspeed, rotor clearance, sieve settings, chaffer openings, etc. Somesystems also allow the operator to provide an input to save the machinesettings for later analysis.

The discussion above is merely provided for general backgroundinformation and is not intended to be used as an aid in determining thescope of the claimed subject matter.

SUMMARY

Machine sensor inputs are received, and a set of performance metrics arecalculated based upon the sensor inputs. The set of performance metricsare stored as a performance target along with one or more additionalperformance targets. One of the performance targets is retrieved and themachine automatically generates an action signal indicative of machinesetting adjustments that can be made in order to control operation ofthe machine to more closely conform to the retrieved performance target.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter. The claimed subject matter is not limited to implementationsthat solve any or all disadvantages noted in the background.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of one example of a control systemarchitecture that controls a mobile machine based on a performancetarget.

FIG. 2 is a block diagram of one example of a data store that storesperformance targets.

FIG. 3 is a pictorial illustration of one implementation of the controlsystem architecture shown in FIG. 1, deployed on a combine.

FIG. 4 is a more detailed block diagram of some of the items in thecontrol system architecture shown in FIG. 1.

FIGS. 5A and 5B (collectively referred to as FIG. 5) illustrate oneexample of the operation of the control system architecture shown in theprevious Figures in controlling a mobile machine based upon aperformance target.

FIG. 6 is a flow diagram illustrating one example of the operation ofthe control system architecture shown in previous Figures in generatingand storing a performance target for later use.

FIG. 7 shows one example of a remote server environment.

FIGS. 8-10 show mobile devices.

FIG. 11 is a block diagram of a computing environment.

DETAILED DESCRIPTION

When operating a complex mobile machine, operating conditions can changefairly frequently. For instance, if a user is operating a combine onsoybeans, the user may then switch to a field containing corn. Thedesired settings for the combine may vary significantly, based upon thecrop type. Therefore, the machine settings for beans may be quitedifferent from the machine settings for corn. In addition, the bestsettings for the machine may vary widely, based upon the condition ofthe given crop. For instance, where straight line winds have caused alarge amount of crop to be down in a field, the operator may need todrive more slowly than if the crop is all standing. Similarly, wet graincan crack more easily than dry grain. Therefore, the settings can varybased upon the moisture content. In fact, even when there is a stronghead wind, the machine settings may differ from when there is a strongtail wind. The same is true if the machine is going uphill or downhill.The best machine settings may vary based upon all these things, as wellas a wide variety of other things.

As used herein, in one example, machine settings differ from performancemetrics. In one example, machine settings are settings that are used toconfigure specific operations or characteristics of the machine. Forinstance, machine settings on a combine may be settings that set aparticular fan speed, a rotor clearance, sieve settings, settings forthe chaffer openings, engine speed, travel speed, etc. Machineperformance metrics, on the other hand, are illustratively metrics thatcharacterize the performance of the machine. For example, some machineperformance metrics can be metrics indicative of productivity, powerutilization, fuel economy (or fuel efficiency), material loss (e.g.,grain loss), and material quality (e.g., grain quality—such as whetherthe grain is cracked, whether it includes material other than grain,etc.), among others.

The performance metrics can be calculated in a wide variety of differentways, and be represented in different units. For instance, grainproductivity can be calculated in terms of volume per unit time (such astons per hour). Power utilization can be calculated in terms of powerefficiency (such as the amount of power utilized as a percent of themaximum rated power of the machine). Fuel economy can be calculated interms of efficiency or otherwise, and can be represented in terms ofunit volume of fuel per unit volume of crop harvest (such as liters perton). Material loss levels can be calculated as a percent of the overallharvest, in terms of unit volume per acre harvested, loss as a percentof overall harvest, loss rate as compared to mass flow rate of grainbeing harvested or otherwise. The material quality metric can also berepresented in terms of the percent of cracked grain or material otherthan grain that is included in the harvested crop. Of course, these areonly examples of the different ways that performance metrics can berepresented. Suffice it to say, for now, that performance metrics aredifferent from machine settings, which, in an example, are settings thatindicate how a machine is configured or characteristics of the machineor of its operation.

It may be that an operator, while operating a machine, may observe thatthe machine is operating at a particularly high performance level. Thepresent discussion will proceed with respect to the mobile machine beinga combine. In that case, the performance metrics for the machine, whenit is performing well, can be calculated and saved as a performancetarget. When an operator is operating a similar machine under similarcircumstances (such as for the same crop type, in a similar field, etc.)the operator can retrieve the previously-stored performance target andthe corresponding target performance metrics can be used by the controlsystem on the combine in an attempt to maintain performance metrics thatare close to the target performance metrics. Further, in one example,the operator can choose from a plurality of different, previously-storedperformance targets.

FIG. 1 is a block diagram of one example of a control systemarchitecture 100. Architecture 100 illustratively includes mobilemachine 102, and it can include an external machine 104. By way ofexample, mobile machine 102 may be an agricultural machine, such as acombine, and no external machine 104 is used. In another example,machine 102 is a tractor and external machine 104 may be an attachment,or another machine or implement that is towed behind the tractor. Theseare examples only. The mobile machine can be a wide variety of othermachines as well, such as a forage harvester, a cotton harvester, asprayer, a seeder, a sugarcane harvester, a piece of tillage equipment,other planting equipment, a piece of turf and forestry equipment, orconstruction equipment, among others.

FIG. 1 shows that mobile machine 102 illustratively generates userinterface outputs, such as user interface displays 106 with user inputmechanisms 108 that are provided for interaction by user (or operator)110. As is described in greater detail below, the user interfacedisplays can be displays that allow a user to store performance metricsand to retrieve previously-store performance metrics for use incontrolling the mobile machine 102 or external machine 104, or both.FIG. 1 also shows that user 110 can provide inputs using other inputmechanisms 112 as well. These can include a whole host of user inputmechanisms that can be used to control machine 102 or machine 104, orboth, such as switches, levers, pedals, etc. Further, FIG. 1 shows thatmobile machine 102 can illustratively communicate with one or moreremote systems 114. Remote systems 114 can include a wide variety ofsystems, and some examples of those are described below with respect toFIG. 2.

In the example shown in FIG. 1, mobile machine 102 illustratively (andby way of example only) includes processor 116, crop type identifier118, performance metric calculation system 120, sensors 122, sensorconditioning components 124 and control system 126. It can also includeperformance target saving/selection component 128, controlled systems130, user interface component 132, search engine 134, target store 136(which illustratively stores performance targets 138), communicationcomponent 140, user interface device 142, and it can include a varietyof other items 144 as well.

Before describing architecture 100, and its operation, in more detail, abrief overview of some of the components will first be provided. Userinterface component 132 can, either by itself or under the control ofanother item in machine 102, generate user interface displays 106 fordisplay on display device 142. Sensors 122 sense a variety of variablesand provide sensor signals to sensor conditioning components 124. Sensorconditioning components 124 can perform compensation, linearization,filtering, image processing, or a wide variety of other calibration andconditioning operations on the sensor signals. Control system 126illustratively receives the sensor signals, after they are conditioned,and generates control signals to control various aspects of mobilemachine 102, or external machine 104, or both, based upon the sensedvariables. The control signals are provided to various controlledsystems 130 that are controlled based upon the sensor signals. Thecontrolled systems 130 can be electrical systems, mechanical systems,hydraulic systems, pneumatic systems, air-over-hydraulic systems, orother systems. The sensor signals and control signals can also beprovided to performance metric calculation system 120 which cancalculate a wide variety of a different types of performance metricsthat can characterize the performance of mobile machine 102, or externalmachine 104, or both. Performance target saving/selection component 128illustratively generates user interface displays 106 with user inputmechanisms 108 that allow user 110 to save the calculated performancemetrics as a performance target 138. The user 110 can save performancetargets 138 in other ways as well. Any of the plurality of differentperformance targets 138 can be retrieved later and used by controlsystem 126 to control mobile machine 102 (or external machine 104, orboth) based upon the performance targets. It will be noted that, whiletarget store 136 is shown as being local to mobile machine 102, it canbe remote therefrom as well. For instance, it can be stored in a remoteserver location that is accessible by control system 126, or othercomponents on mobile machine 102. It is shown as being stored locallyfor the sake of example only.

FIG. 1 shows that external machine 104 can also include a variety ofdifferent external sensors 146, external control components 148,external controlled systems 150, and it can include other items 152 aswell. External sensors 146 illustratively sense variables and providesensor signals (after they are conditioned) to external controlcomponents 148 and it can provide them to the items on machine 102 aswell. Control components 148 generate control signals for controllingexternal controlled systems 150 on machine 104. In one example, thesensor signals and control signals can also be provided to performancemetric calculation system 120 on machine 102, where they are used tocalculate performance metrics that characterize the performance ofexternal machine 104. Thus, they can be stored as a performance targetfor external machine 104, and they can be recalled and used to controlmachine 104 as well.

FIG. 2 is a block diagram showing one example of target store 136 inmore detail. It can be seen in FIG. 2 that target store 136illustratively includes a set of performance targets 138. The individualperformance targets in the set of performance targets 138 areillustratively represented by numbers 154, 156 and 158 in FIG. 2. FIG. 2also shows that target store 136 can include performance targets fromother fleets of machines, which may be located in a similar geographicregion, or which may be operating under similar operating conditions, orwhich may be relevant to user 110 for other reasons. This is indicatedby block 160. Target store 136 can include other items 162 as well.

In the example shown in FIG. 2, each performance target 154-158illustratively includes a set of metric values 164. Each performancetarget 154-158 can also include machine settings 166 that were in placeat the time that the metric values 164 were obtained. The performancetargets can also include operator notes 168, a set of index values 170,and they can include other information 172. In the example shown in FIG.2, the metric values 164 in performance target 154 can be indexed basedon index values 170, so that they can later be retrieved by searchengine 134.

The index values 170 can include a wide variety of different items. Forinstance, in the example shown in FIG. 2, the index values include atarget identifier 174 that includes a unique identifier for thisparticular performance target 154. It can include a machine identifier176 that identifies the particular machine 102 (and perhaps the externalmachine 104) that the performance target was generated on. For instance,where the machine 102 is a combine, the machine ID may include not onlyan identifier for that particular combine, but an identifier for theheader that was used on the machine, when the performance target wasgenerated. The index values 170 can also include a date and time 178when the performance target was obtained, a location 180 (that can beprovided by a geographic location generator, such as a GPS system), afield identifier 182 that identifies the particular field (and perhapsthe farm) where the performance target was set, the crop type 184, theoperator ID 186 and it can include a wide variety of othercharacteristics, such as whether the crop was wet, whether there wasdowned crop, whether there was a strong wind, the wind direction, etc.These items are indicated by block 188.

The performance targets can also have an expiration date or flag. Thiscan indicate that the performance target has expired or been supersededby a newer performance target.

FIG. 3 shows one pictorial illustration in which mobile machine 102 is acombine. It can be seen in FIG. 3 that combine 102 illustrativelyincludes an operator compartment 190, a header 192, a cutter generallyindicated at 194, a thresher generally indicated at 195, a set of groundengaging wheels 198, a separator 200, a spreader 202, an elevator 204, aclean grain tank 206 and a spout 208. In operation, combine 102illustratively travels in the direction generally indicated by arrow210. Header 192 engages the product being harvested and gathers ittoward cutter 194. After it is cut, it is moved toward thresher 195where it is threshed, and then moved to separator 196. The grain fallsto cleaning shoe 200 and the clean grain is moved by elevator 204 intoclean grain tank 206. Tailings can be passed back to thresher 195 wherethey are re-threshed. Material other than grain (such as stalks, husks,etc.) can be chopped and removed from machine 102 by spreader 202.

FIG. 3 also shows that, in one example, combine 102 includes a groundspeed sensor 212, one or more cleaning shoe loss sensors 214, one ormore separator loss sensors 216, a clean grain camera 220 and a tailingscamera 222. Ground speed sensor 212 illustratively senses the travelspeed of combine 102 over the ground. This can be done by sensing thespeed of rotation of the wheels, the drive shaft, the axel, or othercomponents. The travel speed can also be sensed by a positioning system,such as a global positioning system (GPS), a dead reckoning system, aLORAN system, or a wide variety of other systems or sensors that providean indication of travel speed.

Cleaning shoe loss sensors 214 illustratively provide an output signalindicative of the quantity of grain lost by both the right and leftcleaning shoes. In one example, sensors 214 are strike sensors whichcount grain strikes per unit of time to provide an indication of thecleaning shoe grain loss.

Separator loss sensors 216 provide a signal indicative of grain loss inthe left and right separators 196. This can be done by a wide variety ofdifferent types of sensors as well.

Yield monitor 218 is a sensor that senses yield. In one example, it cansense mass flow through elevator 204. It can provide an output signalindicative of this, to indicate the particular yield. This can bemeasured in bushels per hour, bushels per hectare, tons per hour or inother units.

Tailings camera 222 illustratively generates a video image of thetailings that are being passed back to the thresher for re-threshing.Clean grain camera 220 provides a video image indicative of the qualityof the grain being deposited in clean grain tank 206.

FIG. 4 is a block diagram of a portion of the control systemarchitecture 100 shown in FIG. 1, but implemented using the componentsdescribed with respect to combine 102, shown in FIG. 3. Whilearchitecture 100 can be disposed on any mobile machine, it is describedin the context of a combine for the sake of example only.

FIG. 4 shows a number of the sensors 122 described above with respect toFIG. 3. FIG. 4 also shows that sensors 122 can include power utilizationsensor 240, which can be configured to measure the power utilization ofmachine 102, as a percent of its rated power, or in other ways. Sensors122 can also include fuel usage sensor 242 that senses fuel usage.Sensors 122 can also include other controlled system sensors 244 thatsense a variety of other things in the controlled systems 130. Forinstance, they can sense fan speeds, rotor speeds, pressures, flowrates, positions of items, and a wide variety of other things. Sensors122 can include position sensor 245. Of course, sensors 122 can includea variety of other sensors 246 as well.

FIG. 4 also shows that sensor conditioning components 124 can includelinearization components 248 that perform linearization on the varioussignals received. They can also include compensation components 250 thatcompensate for a variety of influences (such as temperature, etc.) onthe sensor signals. Further, they can include amplification components252 that amplify the sensor signals so that they are in a desired range.They can include a wide variety of processing components 254 thatperform additional processing on the sensor signals in order to derivevarious values. For instance, processing components 254 can receive thepower utilization sensor signal from sensor 240 which indicate thecurrent power utilization of machine 102. Processing components 254 canperform the necessary processing to convert that signal into a valuethat indicates the percent of rated power that is being used. Processingcomponents 254 can perform a wide variety of other processing as well,such as averaging, time rolling calculations, other aggregationcalculations, mean calculations, value distribution calculations, and awide variety of other processing.

FIG. 4 also shows that signal conditioning components 124 can includeimage processing system 256 which, itself, includes a material otherthan grain (MOG) identifier 258, broken grain identifier 260, andunthreshed product identifier 262, among other things. Image processingsystem 256 illustratively receives the video signals from video sensors(e.g., cameras) 220 and 222 and processes them to generate outputsignals indicative of various parameters or performance metrics. Basedupon the video signal from camera 220, which is positioned in cleangrain tank 206, MOG identifier 258 can generate an output signalindicative of a quantity (or percent or other measure) of material otherthan grain (such as cobs, husks, stalks, chaff, etc.) that is enteringclean grain tank 206. Broken grain identifier 260 can process the videosignal from camera 220 to identify a quantity (or percent or othermeasure) of broken grain entering clean grain tank 206. Unthreshedproduct identifier 262 can receive the video signal from tailings camera222 and generate an output signal indicative of a quantity (or a percentor other measure) of unthreshed product that is being sent by thetailings elevator back to the thresher, for rethreshing.

FIG. 4 also shows that sensor conditioning components 124 can include awide variety of other components as well. This is indicated by number266 in FIG. 4.

The output from sensor conditioning components 124 is illustrativelyprovided to performance metric calculation system 120 for thecalculation of the performance metrics. In one example, some of thesensors 122 provide signals that are indicative of the current machinesettings on machine 102, for the various controlled systems 130 onmachine 102. Therefore, those values (as indicated by block 268) canalso be provided to control system 126 for use in controlling machine102. This is described in greater detail below.

Performance metric calculation system 120 then calculates current valuesfor the performance metrics. These values indicate a current performanceof machine 102. The current performance metric values are indicated byblock 270 in FIG. 4. In one example, as is discussed in greater detailbelow with respect to FIG. 5, control system 126 obtains targetperformance metric values indicative of the performance targets that theuser wishes to attain while operating machine 102. Those targetperformance metric values are indicated by block 272, and they can beobtained from target store 136, for instance.

FIG. 4 shows that control system 126 can include metric value comparisoncomponent 274 and setting control system 276. Setting control system 276can include an expert system 278 that accesses control rules, functions,etc. 280, to generate a set of output signals 282. Expert system 278 canalso be a neural network, a fuzzy logic system, a machine learningsystem, or a variety of other types of systems.

In one example, for instance, metric value comparison component 274compares the current performance metric values 270 against the targetperformance metric values 272 and generates a difference signalindicative of the difference between those two sets of values. Expertsystem 278 then accesses control rules, functions, etc. 280 to identifyvarious actions that can be taken in order to adjust the operation ofmachine 102 (or its configuration settings, etc.) so that itsperformance (indicated by the current performance metric values 270)more closely matches the desired performance (indicated by the targetperformance metric values 272). Setting control system 276 can accessthe current settings or operating conditions 268 from the controlledsystems and output signals indicative of how those settings or otheroperating conditions should be adjusted.

The output signals 282 can include setting adjustment signals that aresent to a user interface display, or another user interface device, toindicate to user 110 which particular adjustments should be made. Thoseadjustments can then be made manually by user 110. This is indicated byblock 284. The output signals from control system 126 can also includesetting adjustment signals that are provided directly to the controlledsystems 130 to automatically adjust the settings of the controlledsystems. These signals are indicated by block 286. The signals can alsobe output in other ways, such as for storage (for later analysis), orfor other uses. This is indicated by block 288.

FIGS. 5A and 5B (collectively referred to as FIG. 5) show a flow diagramillustrating one example of the operation of architecture 100 incomparing the current performance of machine 102 against the targetperformance and outputting control signals to adjust the control ofmachine 102 based upon that comparison. FIG. 5 assumes that a pluralityof different relevant performance targets 138 have already been storedin target store 136, and that they are accessible by control system 126on machine 102.

User 110 provides inputs through the various user input mechanisms onmachine 102 to begin operation of the machine 102. This is indicated byblock 300 in FIG. 5. For instance, the user can provide a start input(or ignition input) to start the machine 102, and then begin itsoperation. This is indicated by block 302. User 110 can provide otherinputs as well, and this is indicated by block 304.

Performance target saving/selection component 128 then generates a userinterface display with user input mechanisms for user 110, giving user110 a number of options. For instance, user 110 can select a performancetarget (including a set of performance target metrics), from a pluralityof different, saved performance targets, for machine 102. Another optionis for the user to have component 128 automatically select a performancetarget. Yet another option is to bypass the performance target entirely.Displaying the user interfaces that give the user these options isindicated by block 306.

It may be that the user does not wish to select a set of performancetarget metrics, at this point. In that case, the user provides asuitable user input indicating this. This is indicated by block 308. Inanother example, the user can indicate that he or she wishes performancetarget saving/selection component 128 to automatically select a set ofperformance target metrics (e.g., a performance target) from theplurality of saved performance targets, for use in controlling machine102. This is indicated by block 310. If the user does not wish to dothis either, then machine 102 simply obtains the initial machinesettings, as indicated by block 312, and no performance target is used.The user can provide the initial settings manually as indicated by block314, or they can be set to default values 316 by the machine, itself.The initial machine settings can be obtained in other ways as well, andthis is indicated by block 318. User 110 then operates machine 102, asdesired, without using a performance target. This is indicated by block320.

Returning again to block 310, assume that the user provides an inputindicating that the user wishes the performance target saving/selectioncomponent 128 to automatically select a set of performance targetmetrics (e.g., a performance target) from the plurality of savedperformance targets. In this case, system 128 selects a stored set ofperformance target metrics, from a plurality of sets of performancetarget metrics, for use in controlling machine 102. This is indicated byblock 340 in FIG. 5. The performance target metrics 164 in the selectedperformance target are used to control machine 102, as described below.Before describing that, however, a number of examples of how system 128automatically selects the set of performance target metrics will firstbe described.

In one example, component 128 uses crop type identifier system 118 toautomatically identify the crop type, with which machine 102 is beingused. This is indicated by block 322. This can be obtained using asensor input 324. For instance, machine 102 can have a camera that ismounted to generate a video image indicative of the crop beingharvested. The image processing system 256 can process this image toidentify the type of crop that is being harvested (such as corn, beans,oats, canola, etc.). In another example, the user provides an inputselecting a crop type. This is indicated by block 326. Crop typeidentifier system 118 can identify the crop type in other ways as well,and this is indicated by block 328.

Component 128 can obtain other information (in addition to, or insteadof, the crop type) that may be helpful in automatically selecting a setof performance target metrics to be used in controlling machine 102 froma GPS or other positioning system on machine 102. For instance,component 128 can obtain a current location of machine 102. This isindicated by block 330. This can be used, for instance, in a case whereperformance targets are stored in target store 136 and are indexed byfield location or by farm. In that case, component 128 can identify thebest performance target that was generated in that field, and/or forthis crop type. This is an example only.

System 128 can also identify other criteria, based on sensor inputs,that can be used to automatically select a set of target performancemetrics (e.g., a given performance target). This is indicated by block332. For instance, component 128 may obtain a moisture level for thecrop, as indicated by block 334. It may obtain a sensor input indicativeof wind speed and direction as indicated by block 336. It can obtain awhole host of other information 338 as well, such as the machine andheader ID, operator ID, weather conditions, etc. Component 128 can usethis to search for a most relevant performance target in target store136. By way of example, if a performance target was stored for the samefield in the previous year, and the wind speed and the moisture levelwere approximately the same as current conditions, then that performancetarget may have the best set of performance target metrics that system128 can locate. System 128 can search for a performance target in otherways as well, and using other criteria.

Returning again to block 308, assume now that the user has provided aninput indicating that the user wishes to select a performance target foruse in controlling machine 102, instead of having component 128automatically select it. In that case, performance targetsaving/selection component 128 generates a user interface display withinput mechanisms that are actuated to select a stored performancetarget, from the plurality of different performance targets. This isindicated by block 342. For instance, system 128 can gather relevantinformation and automatically identify the top N performance targets intarget store 126 based upon how they relate to the gathered information.System 128 can, for example, use search engine 134 to find allperformance targets for the present machine, with the present header,and having the same crop type. System 128 can then display all of theperformance targets that meet those criteria. The user can then selectfrom this list of stored performance targets that is automaticallygenerated by system 128. This is indicated by block 344.

In another example, system 128 generates a user interface display with asearch box (or with another search criteria input mechanism) that allowsthe user to input or select a set of search criteria to be used insearching data store 136 for relevant sets of performance targets. Theuser can then input (such as type in or select) keywords or other searchcriteria. Search engine 134 then searches target store 136 for the mostclosely matching performance targets 138. By way of example, assume thatthe user is operating in a wet field with downed crop. Assume that theuser also recalls recently operating in a different wet field withdowned crop, where the user achieved desirable performance and storedthe performance metrics 166 as a performance target 138 in data store136. In that case, user 110 can enter search criteria (such as a daterange, crop type and condition identifier identifying wet conditionswith downed crop, etc.) through the search interface so that searchengine 134 can surface the previously stored performance targets for useby user 110 in harvesting the current field. Entering search criteriaand searching data store 136 is indicated by block 346 in FIG. 5.

The user can select one of the plurality of stored performance targetsin other ways as well. This is indicated by block 348.

Once a performance target has been identified (either manually orautomatically), control system 126 obtains the selected set ofperformance target metrics 166 for the selected performance target fromdata store 136. This is indicated by block 350 in FIG. 5. Where datastore 136 is a local data store 352, control system 126 obtains thosetarget metrics locally. Where it is a remote data store 354, controlsystem 126 illustratively uses communication component 140 to downloadthe selected set of performance target metrics from a remote system 114.Control system 126 can obtain the set of selected target metrics inother ways as well, and this is indicated by block 356.

Setting control system 276 then calculates machine settings based uponthe obtained set of performance target metrics. This is indicated byblock 355. For instance, setting control system 276 can calculatemachine settings for all configurable controlled systems on machine 102.By way of example, system 276 can calculate settings for variouspressures, fan speeds, rotor clearance, sieve and chaffer openings,among a wide variety of other settings. It can also calculate operatorcontrollable settings, such as engine speed settings, ground speedsettings, etc.

Setting control system 276 then generates an action signal to set themachine to the calculated settings. This is indicated by block 357. Forinstance, the action signal can be a signal 284 which generates anoperator interface display 359 that identifies, to the operator, how thesettings should be manually set. It can also generate an output signal286 that is used to automatically adjust the settings or configurationsof machine 102. This is indicated by block 358. It can generate theaction signal in other ways as well, and this is indicated by block 360.

The various sensors 122 then monitor machine operations and generatevarious other performance criteria based upon the operation of machine102. This is indicated by blocks 362 and 364 in FIG. 5. Performancemetric calculation system 120 calculates the current performance metricvalues for the various performance metrics, for machine 102, as it isbeing operated. This is indicated by block 366.

At any time, if the operation is complete, then machine 102 can ceasecalculating these items. This is indicated by block 368.

However, if machine 102 is still being operated, then setting controlsystem 276 illustratively determines whether the settings need to beadjusted in order for the calculated current performance metric valuesto more closely match the performance target metric values. This isindicated by block 370 in FIG. 5.

Control system 126 can determine whether setting adjustments need to bemade in a variety of different ways. For instance, each target metricvalue can have an associated performance window. If the current metricvalue deviates from the target performance metric value outside of thatwindow, then this may indicate that a setting adjustment needs to bemade. This operates as a type of thresholding so that the variousperformance metric values can deviate somewhat from the target valueswithout having system 276 continuously making changes and adjustments tothe machine settings. This is only one example of how system 126 candetermine whether the setting adjustments need to be made.

In deciding which particular machine settings need to be adjusted (or incalculating the actual adjustments that need to be made) system 276 canoperate in a variety of different ways. For instance, the rules orfunctions 280 can act as a mapping between deviations from certaintarget performance metric values and the particular settings that needto be adjusted. The rules or functions can consider that certainsettings may improve one performance metric while degrading another. Byway of example, increasing power utilization may improve the powerutilization performance metric, but it may also decrease fuelefficiency, under certain circumstances. Therefore, the rules andfunctions illustratively accommodate for these off-setting adjustmentsto generate machine setting adjustments that will cause the currentperformance metric values to more closely conform to the performancetarget values, as a whole.

In another example, some performance metric values may be more importantthan others. In that case, the expert system can weight thoseperformance metric values more heavily in its calculation of whether andwhat machine settings need to be adjusted. All of these are examplesonly, and other examples of deciding whether and what machine settingadjustments need to be made, can be used.

If, at block 370, it is determined that no adjustments need to be made,processing reverts to block 362 where monitoring is continued and thecurrent performance metric values are calculated. However, if, at block370, it is determined that an adjustment is needed, then setting controlsystem 276 illustratively calculates the machine settings or adjustmentsthat need to be made. This is indicated by block 372. Processing thenreverts to block 354 where system 276 generates an action signal toeither instruct the operator to manually make the setting adjustments,or to automatically make the setting adjustments, or both.

FIG. 6 is a flow diagram illustrating one example of the operation ofarchitecture 100 in allowing user 110 to store a set of performancemetric values as a performance target 138. The flow diagram of FIG. 6assumes that the machine is operating. This is indicated by block 374 inFIG. 6. In addition, the various sensors 122 are monitoring machineoperation and various other performance criteria that are used incalculating the performance metric values. This is indicated by blocks376 and 378 in FIG. 6. Performance metric calculation system 120 isintermittently, or continuously, calculating current performance metricvalues based upon the sensors and other monitor signals. This isindicated by block 380.

User 110 is illustratively observing and visually monitoring theoperation of machine 102 to determine whether its performance isadequate. If not, user 102 can make various setting adjustments or otheroperational adjustments to increase the performance of machine 102. Atsome point, it is assumed that user 110 observes that the operation ofmachine 102 is sufficient to represent a performance target. Forinstance, user 110 can observe that machine 102 is performing at a veryhigh level. In that case, user 110 illustratively provides an inputthrough a suitable user input mechanism that indicates that performancetarget saving/selection component 128 is to store the currentperformance metric values as a performance target 136. Receiving theinput to store the performance target metric values as a performancetarget is indicated by block 382.

When this happens, performance target saving/selection component 128illustratively obtains the desired index values that are to be storedalong with the performance target 138. This is indicated by block 384.Some or all of these values can be obtained by system 128 automatically.This is indicated by block 386. For instance, the system may be able toautomatically assign a target identifier to this particular performancetarget and identify the machine ID and header ID, the date and time, thelocation, the field ID, the crop type, the operator ID, and other indexvalues.

In another example, system 128 can prompt user 110 for entry of theindex values, or for those values that were not obtained automatically.Prompting the user is indicated by block 388. Component 128 can obtainthe index values in other ways as well, and this is indicated by block390.

Component 128 can then navigate the user through a user experience thatallows the user to input other information. This is indicated by block392. For instance, component 128 can generate a user interface displaywith user input mechanisms that allow user 110 to input otherinformation, such as notes, crop conditions, weather conditions, orother information that may be useful to this user 110, or a differentuser 110, in the future.

Once all the information is input for the performance target, theperformance metrics and index values are all stored for use as aperformance target (e.g., set of target performance metrics) 138. Thisis indicated by block 394 in FIG. 6. As mentioned above, they can bestored on a local data store, as indicated by block 396. They can bestored remotely as indicated by block 398, or they can be stored inother locations 400. Processing then reverts back to block 376 where thevarious sensors continue to monitor the operation and performancecriteria of machine 102.

At some point, the operation is complete. This is indicated by block 402in FIG. 6.

Thus, the present discussion describes that a user can select from aplurality of different, previously-stored performance targets. They canbe indexed in a wide variety of ways and selected manually orautomatically.

It should be noted that, while the above discussion has proceeded withmachine 102 being a combine, it could just as easily be a variety ofother machines as well. Some of these were mentioned above. Of course,these are examples only.

It should also be noted that the system illustratively stores, asperformance targets, performance metric values and not simply machinesettings. Thus, the system controls machine 102 based on itsperformance, and not simply based upon its settings. This accommodatesfor a wide variety of different types of scenarios, but still keepsmachine 102 performing well.

By way of example, to some extent, the machine settings are not ofprimary importance, as long as the machine is performing well. Somemachines, for instance, have tolerances for the various weldments thatform the machine. Therefore, if one machine has a certain machineconfiguration setting that is set to 5 mm, and a second machine is setto the same setting, the two machines may operate entirely differently,because the weldments on the first machine do not precisely match thoseon the second machine (although they may be within the acceptabletolerances). Therefore, assume that a user was operating the firstmachine and obtained a high level of performance. If only the machinesettings were stored from the first machine, then those machine settingswould be inappropriate for operation of a second machine. If they weredownloaded as machine setting targets for the second machine, and thesecond machine was configured using those settings, the performancewould be entirely inadequate, because of even slight differences in themachines' weldments.

However, as described above, once the user has obtained desiredperformance using the first machine, it is the performance metrics thatare saved. Therefore, when those performance metrics are downloaded tothe second machine (as a performance target), the control systemautomatically sets the machine settings, and makes adjustments to them,to obtain the performance that was previously obtained using the firstmachine. The same can be done where the machine is the same but someother criteria are different. For instance, it may be the same machineoperating in a different crop type, or on different land, or with adifferent header, etc. In the end, the operator does not care whether agiven machine setting was set to 5 mm or 10 mm as long as the machine isperforming well. Thus, while the control system may consider theprevious machine settings as initial settings, the control system mayalso ignore the previous machine settings, and may use the expert systemto derive an initial set of machine settings and then intermittentlyadjust those settings to maintain the performance of the machine withinthe performance window of the target set of performance metrics. Thissame system can be applied across multiple different types of machines.

For example, where the system is used on a sprayer that is spraying aliquid product on a field, it may be that an important performancemetric is application rate (such as liters per acre). In that case, thecontrol system is not so much interested in the hose diameter for thesprayer, as it is in the application rate. Thus, the control system cancontrol the valve settings, the pump displacement, the flow rate, etc.,in order to achieve the desired performance, regardless of theparticular machine settings that were used on the machine that generatedthe performance target metric values.

Similarly, where the present system is deployed on a seeder, theperformance metric value of interest may be population in terms of seedspacing, number of plants per acre, etc. In that case, the controlsystem does not so much care about the air pressure in the seed deliverytubes as it does about the population performance metric value. Thus, aslong as the control system is controlling the machine to the performancetarget metric value, and not the machine settings, the same performancecan be achieved across different machines, across time periods, fromyear-to-year, etc.

In addition, the present system accommodates for a scenario in whichenvironmental conditions exist that the machine does not necessarilyknow about. For instance, assume that the machine is harvesting wheat.It may be that there has been recent rain, so the crop is wet. In thatcase, the operator 110 may have operated in wet conditions just recentlyin a different field, or even last year in the same field. Thus,operator 110 can use the system to identify the performance targetmetric values that were stored for that field, under similar conditions,and download them to the control system to be used as a performancetarget. The performance target can be used in controlling the operationof machine 102 in the current field, under the current conditions.

Similarly, the performance target metric values can be used byrelatively inexperienced operators to obtain higher performance. By wayof example, assume that a highly experienced operator is harvestingbeans and achieves a high level of machine performance. The experiencedoperator can store those performance metric values as a performancetarget to a remote data store where they can be accessed by other users.In that scenario, less experienced users can download the performancetarget, for the same crop type, so that the control system can controlthe machine of the inexperienced operator in order to achieve a highlevel of performance. Thus, the expert operator need not be in themachine in order to obtain a higher level of performance.

In yet another scenario, an operator may be harvesting beans in onefield and have the machine set up so that it is achieving a very highlevel of performance. The user can then store the performance metricvalues as a performance target. However, it may be that the user thenneeds to switch fields to harvest corn. In that case, the machinesettings must normally be changed to achieve a high level of performancein harvesting corn. It may be that, even later in the same day or sameweek, the user reenters a bean field to again harvest beans. The usercan then simply recall the performance target that was achieved in thefirst bean field and the control system will automatically control themachine to obtain those performance target metric values. In this way,the user need not attempt to recreate the precise settings that wereused to obtain the high level of performance, as the control system cando this automatically. Therefore, as the operator moves from field tofield and/or from crop type to crop type, he or she can recall thepreviously known performance targets for that crop type and/or for thatfield.

The present discussion has mentioned processors and servers. In oneembodiment, the processors and servers include computer processors withassociated memory and timing circuitry, not separately shown. They arefunctional parts of the systems or devices to which they belong and areactivated by, and facilitate the functionality of the other componentsor items in those systems.

Also, a number of user interfaces have been discussed. They can take awide variety of different forms and can have a wide variety of differentuser actuatable input mechanisms disposed thereon. For instance, theuser actuatable input mechanisms can be text boxes, check boxes, icons,links, drop-down menus, search boxes, etc. They can also be actuated ina wide variety of different ways. For instance, they can be actuatedusing a point and click device (such as a track ball or mouse). They canbe actuated using hardware buttons, switches, a joystick or keyboard,thumb switches or thumb pads, etc. They can also be actuated using avirtual keyboard or other virtual actuators. In addition, where thescreen on which they are displayed is a touch sensitive screen, they canbe actuated using touch gestures. Also, where the device that displaysthem has speech recognition components, they can be actuated usingspeech commands. The user interfaces can be natural user interfaces,audible or haptic interfaces, etc. The user input mechanisms caninclude, levers, switches, pedals, steering wheels, etc.

A number of data stores have also been discussed. It will be noted theycan each be broken into multiple data stores. All can be local to thesystems accessing them, all can be remote, or some can be local whileothers are remote. All of these configurations are contemplated herein.

Also, the figures show a number of blocks with functionality ascribed toeach block. It will be noted that fewer blocks can be used so thefunctionality is performed by fewer components. Also, more blocks can beused with the functionality distributed among more components.

FIG. 7 is a block diagram of architecture 100, shown in FIG. 1, exceptthat it communicates with elements in a remote server architecture 500.In an example embodiment, remote server architecture 500 can providecomputation, software, data access, and storage services that do notrequire end-user knowledge of the physical location or configuration ofthe system that delivers the services. In various embodiments, remoteservers can deliver the services over a wide area network, such as theinternet, using appropriate protocols. For instance, remote servers candeliver applications over a wide area network and they can be accessedthrough a web browser or any other computing component. Software orcomponents shown in FIG. 1 as well as the corresponding data, can bestored on servers at a remote location. The computing resources in aremote server environment can be consolidated at a remote data centerlocation or they can be dispersed. Remote server infrastructures candeliver services through shared data centers, even though they appear asa single point of access for the user. Thus, the components andfunctions described herein can be provided from a remote server at aremote location using a remote server architecture. Alternatively, theycan be provided from a conventional server, or they can be installed onclient devices directly, or in other ways.

In the embodiment shown in FIG. 7, some items are similar to those shownin FIG. 1 and they are similarly numbered. FIG. 7 specifically showsthat target store 136, search engine 134 and remote systems 114 (or anyother parts of the control architecture 100) can be located at a remoteserver location 502. Therefore, machine 102 accesses those systemsthrough remote server location 502.

FIG. 7 also depicts another embodiment of a remote server architecture.FIG. 7 shows that it is also contemplated that some elements of FIG. 1are disposed at remote server location 502 while others are not. By wayof example, target store 136 or remote systems 114 can be disposed at alocation separate from location 502, and accessed through the remoteserver at location 502. Regardless of where they are located, they canbe accessed directly by machine 102, through a network (either a widearea network or a local area network), through a mobile device used byuser 110 on machine 102, they can be hosted at a remote site by aservice, or they can be provided as a service, or accessed by aconnection service that resides in a remote location. Also, the data canbe stored in substantially any location and intermittently accessed by,or forwarded to, interested parties. For instance, physical carriers canbe used instead of, or in addition to, electromagnetic wave carriers. Insuch an embodiment, where cell coverage is poor or nonexistent, anothermobile machine (such as a fuel truck) can have an automated informationcollection system. As the machine 102 comes close to the fuel truck forfueling, the system automatically collects the information (e.g.,performance target) from the machine 102 using any type of ad-hocwireless connection. The collected information can then be forwarded tothe main network as the fuel truck reaches a location where there iscellular coverage (or other wireless coverage). For instance, the fueltruck may enter a covered location when traveling to fuel other machinesor when at a main fuel storage location. All of these architectures arecontemplated herein. Further, the information can be stored on themachine 102 until the machine 102 enters a covered location. The machine102, itself, can then send the information to the main network.

It will also be noted that the elements of FIG. 1, or portions of them,can be disposed on a wide variety of different devices. Some of thosedevices include servers, desktop computers, laptop computers, tabletcomputers, or other mobile devices, such as palm top computers, cellphones, smart phones, multimedia players, personal digital assistants,etc.

FIG. 8 is a simplified block diagram of one illustrative embodiment of ahandheld or mobile computing device that can be used as a user's orclient's hand held device 16, in which the present system (or parts ofit) can be deployed. For instance, a mobile device can be deployed inthe operator compartment of machine 102 for use in generating,processing, or displaying performance targets. FIGS. 9-10 are examplesof handheld or mobile devices.

FIG. 8 provides a general block diagram of the components of a clientdevice 16 that can run some components shown in FIG. 1, that interactswith them, or both. In the device 16, a communications link 13 isprovided that allows the handheld device to communicate with othercomputing devices and under some embodiments provides a channel forreceiving information automatically, such as by scanning. Examples ofcommunications link 13 include allowing communication though one or morecommunication protocols, such as wireless services used to providecellular access to a network, as well as protocols that provide localwireless connections to networks.

Under other example, applications can be received on a removable SecureDigital (SD) card that is connected to an interface 15. Interface 15 andcommunication links 13 communicate with a processor 17 (which can alsoembody processor 116 from FIG. 1) along a bus 19 that is also connectedto memory 21 and input/output (I/O) components 23, as well as clock 25and location system 27.

I/O components 23, in one embodiment, are provided to facilitate inputand output operations. I/O components 23 for various embodiments of thedevice 16 can include input components such as buttons, touch sensors,optical sensors, microphones, touch screens, proximity sensors,accelerometers, orientation sensors and output components such as adisplay device, a speaker, and or a printer port. Other I/O components23 can be used as well.

Clock 25 illustratively comprises a real time clock component thatoutputs a time and date. It can also, illustratively, provide timingfunctions for processor 17.

Location system 27 illustratively includes a component that outputs acurrent geographical location of device 16. This can include, forinstance, a global positioning system (GPS) receiver, a LORAN system, adead reckoning system, a cellular triangulation system, or otherpositioning system. It can also include, for example, mapping softwareor navigation software that generates desired maps, navigation routesand other geographic functions.

Memory 21 stores operating system 29, network settings 31, applications33, application configuration settings 35, data store 37, communicationdrivers 39, and communication configuration settings 41. Memory 21 caninclude all types of tangible volatile and non-volatilecomputer-readable memory devices. It can also include computer storagemedia (described below). Memory 21 stores computer readable instructionsthat, when executed by processor 17, cause the processor to performcomputer-implemented steps or functions according to the instructions.Processor 17 can be activated by other components to facilitate theirfunctionality as well.

FIG. 9 shows one example in which device 16 is a tablet computer 600. InFIG. 9, computer 600 is shown with user interface display screen 602.Screen 602 can be a touch screen or a pen-enabled interface thatreceives inputs from a pen or stylus. It can also use an on-screenvirtual keyboard. Of course, it might also be attached to a keyboard orother user input device through a suitable attachment mechanism, such asa wireless link or USB port, for instance. Computer 600 can alsoillustratively receive voice inputs as well.

Additional example of devices 16 can be used as well. Device 16 can be afeature phone, smart phone or mobile phone. The phone can include a setof keypads for dialing phone numbers, a display capable of displayingimages including application images, icons, web pages, photographs, andvideo, and control buttons for selecting items shown on the display. Thephone can include an antenna for receiving cellular phone signals. Insome examples, the phone also includes a Secure Digital (SD) card slotthat accepts a SD card.

FIG. 10 shows that device 16 can be a smart phone 71. Smart phone 71 hasa touch sensitive display 73 that displays icons or tiles or other userinput mechanisms 75. Mechanisms 75 can be used by a user to runapplications, make calls, perform data transfer operations, etc. Ingeneral, smart phone 71 is built on a mobile operating system and offersmore advanced computing capability and connectivity than a featurephone.

Note that other forms of the devices 16 are possible.

FIG. 11 is one embodiment of a computing environment in which elementsof FIG. 1, or parts of it, (for example) can be deployed. With referenceto FIG. 11, an example system for implementing some embodiments includesa general-purpose computing device in the form of a computer 810.Components of computer 810 may include, but are not limited to, aprocessing unit 820 (which can comprise processor 116), a system memory830, and a system bus 821 that couples various system componentsincluding the system memory to the processing unit 820. The system bus821 may be any of several types of bus structures including a memory busor memory controller, a peripheral bus, and a local bus using any of avariety of bus architectures. Memory and programs described with respectto FIG. 1 can be deployed in corresponding portions of FIG. 11.

Computer 810 typically includes a variety of computer readable media.Computer readable media can be any available media that can be accessedby computer 810 and includes both volatile and nonvolatile media,removable and non-removable media. By way of example, and notlimitation, computer readable media may comprise computer storage mediaand communication media. Computer storage media is different from, anddoes not include, a modulated data signal or carrier wave. It includeshardware storage media including both volatile and nonvolatile,removable and non-removable media implemented in any method ortechnology for storage of information such as computer readableinstructions, data structures, program modules or other data. Computerstorage media includes, but is not limited to, RAM, ROM, EEPROM, flashmemory or other memory technology, CD-ROM, digital versatile disks (DVD)or other optical disk storage, magnetic cassettes, magnetic tape,magnetic disk storage or other magnetic storage devices, or any othermedium which can be used to store the desired information and which canbe accessed by computer 810. Communication media may embody computerreadable instructions, data structures, program modules or other data ina transport mechanism and includes any information delivery media. Theterm “modulated data signal” means a signal that has one or more of itscharacteristics set or changed in such a manner as to encode informationin the signal.

The system memory 830 includes computer storage media in the form ofvolatile and/or nonvolatile memory such as read only memory (ROM) 831and random access memory (RAM) 832. A basic input/output system 833(BIOS), containing the basic routines that help to transfer informationbetween elements within computer 810, such as during start-up, istypically stored in ROM 831. RAM 832 typically contains data and/orprogram modules that are immediately accessible to and/or presentlybeing operated on by processing unit 820. By way of example, and notlimitation, FIG. 11 illustrates operating system 834, applicationprograms 835, other program modules 836, and program data 837.

The computer 810 may also include other removable/non-removablevolatile/nonvolatile computer storage media. By way of example only,FIG. 11 illustrates a hard disk drive 841 that reads from or writes tonon-removable, nonvolatile magnetic media an optical disk drive 855, andnonvolatile optical disk 856. The hard disk drive 841 is typicallyconnected to the system bus 821 through a non-removable memory interfacesuch as interface 840, and optical disk drive 855 are typicallyconnected to the system bus 821 by a removable memory interface, such asinterface 850.

Alternatively, or in addition, the functionality described herein can beperformed, at least in part, by one or more hardware logic components.For example, and without limitation, illustrative types of hardwarelogic components that can be used include Field-programmable Gate Arrays(FPGAs), Program-specific Integrated Circuits (e.g., ASICs),Program-specific Standard Products (e.g., ASSPs), System-on-a-chipsystems (SOCs), Complex Programmable Logic Devices (CPLDs), etc.

The drives and their associated computer storage media discussed aboveand illustrated in FIG. 11, provide storage of computer readableinstructions, data structures, program modules and other data for thecomputer 810. In FIG. 11, for example, hard disk drive 841 isillustrated as storing operating system 844, application programs 845,other program modules 846, and program data 847. Note that thesecomponents can either be the same as or different from operating system834, application programs 835, other program modules 836, and programdata 837.

A user may enter commands and information into the computer 810 throughinput devices such as a keyboard 862, a microphone 863, and a pointingdevice 861, such as a mouse, trackball or touch pad. Other input devices(not shown) may include a joystick, game pad, satellite dish, scanner,or the like. These and other input devices are often connected to theprocessing unit 820 through a user input interface 860 that is coupledto the system bus, but may be connected by other interface and busstructures. A visual display 891 or other type of display device is alsoconnected to the system bus 821 via an interface, such as a videointerface 890. In addition to the monitor, computers may also includeother peripheral output devices such as speakers 897 and printer 896,which may be connected through an output peripheral interface 895.

The computer 810 is operated in a networked environment using logicalconnections (such as a local area network—LAN, or wide area network WAN)to one or more remote computers, such as a remote computer 880.

When used in a LAN networking environment, the computer 810 is connectedto the LAN 871 through a network interface or adapter 870. When used ina WAN networking environment, the computer 810 typically includes amodem 872 or other means for establishing communications over the WAN873, such as the Internet. In a networked environment, program modulesmay be stored in a remote memory storage device. FIG. 11 illustrates,for example, that remote application programs 885 can reside on remotecomputer 880.

It should also be noted that the different embodiments described hereincan be combined in different ways. That is, parts of one or moreembodiments can be combined with parts of one or more other embodiments.All of this is contemplated herein.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

What is claimed:
 1. A mobile machine operating on a crop of a crop type,comprising: a set of controlled systems that control operation of themobile machine based on settings of the mobile machine; a performancemetric calculation system that receives a sensor signal and calculates acurrent performance metric value indicative of a current performancelevel of the mobile machine based on the received sensor signal; and acontrol system that obtains a given performance target from a pluralityof different, previously-stored, performance targets based on the croptype, wherein the given performance target is indicative of a targetperformance level of the mobile machine, and wherein the performancetargets are based on data obtained from one or more other mobilemachines operating on a crop of a same crop type as the mobile machine,and generates a control signal for the set of controlled systems,indicative of adjustments to the settings of the mobile machine, basedon the current performance metric value and a performance target metricvalue in the given performance target, wherein the control systemcontrols the set of controlled systems using the generated controlsignal.
 2. The mobile machine of claim 1 and further comprising: aplurality of different sensors generating sensor signals indicative ofoperating characteristics of the mobile machine.
 3. The mobile machineof claim 2 and further comprising: a performance target selectioncomponent that selects the given performance target from the pluralityof different, previously-stored performance targets.
 4. The mobilemachine of claim 3 wherein the performance target selection componentgenerates a user interface display with a target selection user inputmechanism and receives a target selection user input selecting the givenperformance target from the plurality of different, previously-storedperformance targets.
 5. The mobile machine of claim 3 wherein theperformance target selection component obtains a set of one or moresearch criteria, including a location indicator indicating a location ofthe mobile machine, and identifies the given performance target based onthe one or more search criteria.
 6. The mobile machine of claim 2wherein the control system comprises: a setting control system thatgenerates the action signal based on a difference between the currentperformance metric value and the performance target metric value in thegiven performance target.
 7. The mobile machine of claim 6 wherein thesetting control system generates the action signal as a user interfacesignal that generates a user interface indicative of the adjustments tothe machine settings.
 8. The mobile machine of claim 6 wherein thesetting control system generates the action signal as a control signalthat is provided to the set of controlled systems to automatically makethe adjustments to the machine settings.
 9. The mobile machine of claim2 and further comprising: a performance target saving component thatreceives a user input and, in response, saves the current performancemetric value as an additional performance target.
 10. A method,comprising: sensing operating characteristics of a mobile machineoperating on a crop of a crop type; calculating a set of currentperformance metric values for the mobile machine indicative of currentperformance levels of the mobile machine based on the sensed operatingcharacteristics; obtaining, on the mobile machine, a given performancetarget based on the crop type, from a plurality of different,previously-stored performance targets, the given performance targetincluding a set of performance target metric values indicative ofpreviously-stored performance metrics and target performance levels ofthe mobile machine, wherein the performance targets are based on dataobtained from one or more other mobile machines operating on a crop of asame crop type as the mobile machine; and controlling a set ofcontrolled systems on the mobile machine based on a difference betweenthe current performance metric values and the set of performance targetmetric values in the given performance target.
 11. The method of claim10 wherein the mobile machine comprises an agricultural machine.
 12. Themethod of claim 11 wherein obtaining comprises: receiving an operatorselection input identifying one or more search criteria; displaying aset of the plurality of different, previously-stored performance targetsbased on the one or more search criteria; and receiving an operatorselection input selecting one of the displayed performance targets asthe given performance target.
 13. The method of claim 12 and furthercomprising: receiving an operator input; and in response, saving thecurrent performance metric values as an additional performance target.14. The method of claim 12 wherein obtaining comprises: obtaining one ormore index values; searching a target store that stores the plurality ofdifferent, previously-stored performance targets based on the one ormore index values; and identifying the given performance target.
 15. Amethod, comprising: sensing operating characteristics of a first mobilemachine operating on a crop of a crop type; calculating a set ofperformance metrics indicative of a performance level of the firstmobile machine based on the sensed operating characteristics; saving thecalculated set of performance metrics as one performance target, whereinthe performance target is one of a plurality of different, savedperformance targets of the first mobile machine; retrieving, by thefirst mobile machine, a given performance target indicative of aperformance metric generated based on data obtained from a second mobilemachine operating on a crop of a same crop type as the first mobilemachine; and controlling operation of the first mobile machine based onthe given performance target.
 16. The method of claim 15 wherein savingthe calculated set of performance metrics as one performance target, ofthe plurality of different, saved performance targets comprises one of:saving the one performance target to a local data store on the firstmobile machine; and saving the one performance target to a remote serverenvironment.
 17. The method of claim 15 and further comprising:obtaining a set of index values corresponding to the one performancetarget; and saving the set of index values along with the oneperformance target.
 18. The method of claim 17 wherein retrievingcomprises: generating a user interface display with a search user inputmechanism that is actuated to receive user search inputs; receiving useractuation of the search user input mechanism; and searching for thegiven performance target based on the user search inputs and the indexvalues corresponding to the given performance target.